package com.example.model.pojo.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 用户信息响应数据传输对象
 */
@Data
@Schema(name = "用户信息响应对象", description = "用户基本信息响应数据")
public class UserInfoVO {
    @Schema(description = "用户ID", required = true, example = "1")
    private Integer id;             // 用户ID
    
    @Schema(description = "用户姓名", required = true, example = "张三")
    private String name;            // 用户姓名
    
    @Schema(description = "学号", example = "20220001")
    private String studentId;       // 学号
    
    @Schema(description = "教师工资号", example = "T2023001")
    private String teacherId;       // 教师工资号
    
    @Schema(description = "用户角色: 0-学生, 1-教师", required = true, example = "0")
    private Integer role;           // 用户角色: 0-学生, 1-教师
    
    @Schema(description = "班级名称", example = "计算机科学与技术1班")
    private String className;       // 班级名称
    
    @Schema(description = "电子邮箱", example = "zhangsan@example.com")
    private String email;           // 电子邮箱
    
    @Schema(description = "创建时间", required = true, example = "2023-09-01T10:00:00")
    private LocalDateTime createdAt; // 创建时间
}